The output feedback pole placement problem occurs in physical systems, such as mechanical, scientific, engineering, geometrical, and biological systems. A representative example of such a system 100 is depicted in FIG. 1. In particular, there are mechanical linkages 104A, 104B, and 104C, collectively referred to as the mechanical linkages 104. The linkages 104 are connected to each other and to a surface 102, such as a wall, at points 106A, 106B, and 106C, collectively referred to as the joints 106, as depicted in FIG. 1. The linkages 104 may rotate around the joints 106 to which they are connected.
The mechanical linkages 104 are driven by torques ui applied to the joints 106 with measured angular displacements yi. It may be desired to understand and control the behavior of this system 100. Setting vi:=ith angular velocity, the system 100 thus evolves according to the linearized Newton equations:
                                          ⅆ                          v              i                                            ⅆ            t                          =                              I            i                    ⁢                      u            i                                              (        1        )                                                      ⅆ                          y              i                                            ⅆ            t                          =                  v          i                                    (        2        )            
More generally, a physical system can be considered as having m inputs and p outputs, which are modeled as vectors u in Rm and y in Rp. If this system is linear, or is at near equilibrium, then there are n internal states x, which are considered as a vectors in Rn, such that the system is governed by first order linear evolution equations:
                                          ⅆ            x                                ⅆ            t                          =                  Ax          +          Bu                                    (        3        )                                y        =        Cx                            (        4        )            FIG. 2 shows a schematic representation of such a physical system 200. The Fourier transform of equation (3) gives sx=Ax+Bu. If this is solved for x, and substituted in equation (4), the following result is obtained:y=C(sI−A)−1Bu  (5)The multiplier C(sI−A)−1B is called the transfer function of the system. This p by m matrix of rational functions determines the response of the measured quantities y in terms of the inputs u, in the frequency domain.
Now, it is supposed that the system 200 is wished to be controlled with a constant linear output feedback u=Fy. Such a corresponding physical system 300 is depicted in FIG. 3. The behavior of the closed system
                                          ⅆ            x                                ⅆ            t                          =                              (                          A              +              BFC                        )                    ⁢          x                                    (        6        )            is determined by the roots of the characteristic polynomialf(s)=det(sIn−A−BFC)  (7)Thus, the forward problem is, given a physical system, represented as matrices A, B, C, and a feedback law F, then the system evolves according to the behavior encoded in its characteristic polynomial f(s). The inverse problem is the pole placement problem. That is, given a linear system represented by matrices A, B, C, and a desired behavior f(s), which feedback laws F satisfy f(s)=det(sIn−A−BFC)?
The generalized static output feedback pole place problem can therefore be described as follows. Given real matrices AεRn×n, BεRn×m, CεRp×n and closed subsets C1, C2, . . . Cn⊂C, find KεRm×p such thatλ(A+BKC)εCi for i=1, 2, . . . , n  (8)Here, λi (A+BKC) denotes the ith eigenvalues of A+BKC. Such eigenvalues can be considered the parameters of the physical system being analyzed and/or controlled.
There are various special cases of the generalized static output feedback pole placement problem. For instance, the classical pole placement problem can be written asCi={ci},ciεC  (9)The regions Ci are discrete points. Stabilization-type problems for continuous time and discrete time physical systems can be written asC1=C2= . . . =Cn={zεC|Re(z)≦−α}  (10)andC1=C2= . . . =Cn={zεC∥z|≦α}  (11)respectively. The relaxed classical pole placement problem is written asC1=C2= . . . =Cn={zεC∥z−ci|≦ri}  (12)
Furthermore, a final special case of the generalized static output feedback pole placement problem includes hybrid pole placement problems. These are problems that specify a pair of poles must be placed at a point and its complex conjugate, while all other belong within a closed region C. Thus,C1={c}, C2={ c}, C3=C4= . . . =Cn=C  (13)In variations of the hybrid pole placement problem, more than n pairs of points must be placed at a set of n points and their corresponding complex conjugates, while all others belong to a closed region C.
Solutions to these and other output feedback pole placement problems typically assume that the system parameters are constant. However, in many if not most real-world physical systems, the parameters are not perfectly constant. For example, everyday wear-and-tear on mechanical system parts can cause parameters to slowly drift from the original initial values.
The reference Kaiyang Yang and Robert Orsi, “Pole Placement via Output Feedback: A Methodology Based on Projections,” in Proceedings of the 16th IFAC World Congress, Prague, Czech Republic, 2005, hereinafter referred to as [Yang and Orsi], discloses an algorithm for solving the generalized static output feedback pole placement problem described above in relation to equation (8). The algorithm of [Yang and Orsi], however, assumes that system parameters are perfectly constant or perfectly static. As a result, the algorithm cannot accommodate many real-world physical systems, in which such parameters are not perfectly constant.
Furthermore, the reference Kaiyang Yang, Robert Orsi, and John B. Moore, “A Projective Algorithm for Static Output Feedback Stabilization,” in Proceedings of the 2nd IFAC Symposium on System, Structure and Control, Oaxaca, Mexico, 2004, hereinafter referred to as [Yang, Orsi, and Moore], a projective algorithm is proposed for the following static output feedback problem. Given a linear time invariant (LTI) system
                                          ⅆ            x                                ⅆ            t                          =                  Ax          +          Bu                                    (        14        )                                y        =        Cu                            (        15        )            where the vectors xεRn, uεRm, yεRp, and the matrices AεRn×n, BεRn×m, CεRp×n, find a static output feedback control lawu=Ky  (16)where KεRm×p is a constant matrix such that the eigenvalues ki of the resulting n-by-n close-loop system matrix A+BKC have non-positive real parts.
The projective algorithm of [Yang, Orsi, and Moore], like the algorithm of [Yang and Orsi] and other solutions to static output feedback problems, assumes that system parameters are perfectly constant or perfectly static. Because system parameters are typically not constant, however, the solutions provided by the projective algorithm of [Yang, Orsi, and Moore], [Yang and Orsi], and other solutions are not ideal. Furthermore, such solutions are often highly sensitive to small changes in the system parameters. Thus, even minor amounts of parameter drift can cause these solutions to no longer be appropriate and useful.
In addition, because the controllers in such physical systems often rely on solutions to the output feedback pole placement problem that are designed using initial system parameter values, they are not equipped to monitor drafts in system parameters over long periods of time. Furthermore, such controllers are not equipped to update the feedback control system to reflect these changes in the system parameters, nor alert the system manager when critical changes in the system parameters occur. For example, the controller in question may no longer be capable of accommodating the changes that have occurred over time. The net result is the system damage, or safety problems, can result.
For these and other reasons, there is a need for the present invention.